home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 4 / Apprentice-Release4.iso / Source Code / C / Games / Pentominoes 2.0 / Pent code / pent editor dialogs.c < prev    next >
Text File  |  1995-07-29  |  11KB  |  64 lines

  1. Dialog(theDialog, TRUE);
  2.     
  3.     itemSelected=0;
  4.     while ((itemSelected!=kPieceOKItem) && (itemSelected!=kPieceCancelItem))
  5.     {
  6.         itemSelected=GetOneDialogEvent(modalFilterProc);
  7.     }
  8.     
  9.     changed=FALSE;
  10.     
  11.     if (itemSelected==kPieceOKItem)
  12.     {
  13.         pieceSize=GetDialogControlValue(theDialog, kPieceSizeItem);
  14.         changed=(pieceSize!=gTileSize);
  15.         gTileSize=pieceSize;
  16.     }
  17.     
  18.     ShutDownTheDialog(theDialog, modalFilterProc, userItemProc);
  19.     
  20.     while (HandleSingleEvent(FALSE)) {};
  21.     
  22.     return changed;
  23. }
  24.  
  25. static    pascal Boolean GroupModalFilter(DialogPtr theDialog, EventRecord *theEvent, short *theItem)
  26. {
  27.     return PoorMansFilterProc(theDialog, theEvent, theItem, 0L);
  28. }
  29.  
  30. static    pascal Boolean BoardModalFilter(DialogPtr theDialog, EventRecord *theEvent, short *theItem)
  31. {
  32.     return PoorMansFilterProc(theDialog, theEvent, theItem, 0L);
  33. }
  34.  
  35. static    pascal Boolean PieceSizeModalFilter(DialogPtr theDialog, EventRecord *theEvent, short *theItem)
  36. {
  37.     return PoorMansFilterProc(theDialog, theEvent, theItem, 0L);
  38. }
  39.  
  40. static    pascal Boolean DeleteModalFilter(DialogPtr theDialog, EventRecord *theEvent, short *theItem)
  41. {
  42.     if (PoorMansFilterProc(theDialog, theEvent, theItem, 0L))
  43.         return TRUE;
  44.     if (CheckCommandKey(theDialog, theEvent, theItem, 'D', 1))
  45.         return TRUE;
  46.     if (CheckCommandKey(theDialog, theEvent, theItem, 'C', 2))
  47.         return TRUE;
  48.     
  49.     return FALSE;
  50. }
  51.  
  52. static    Boolean CheckDeleteDialogDispatch(Boolean isRef, Str255 theName)
  53. {
  54.     ModalFilterUPP    procFilter = NewModalFilterProc(TwoButtonFilter);
  55.     short            result;
  56.     
  57.     result=DisplayTheAlert(kCautionAlert, kDeleteAlert,
  58.         isRef ? "\pgroup" : "\pboard", theName, "\p", "\p",
  59.         (UniversalProcPtr)DeleteModalFilter);
  60.     while (HandleSingleEvent(FALSE)) {};
  61.     
  62.     return (result==1);
  63. }
  64.